#pragma once

#include <string>
#include <vector>

#include "ClassMemberInfo.h"

namespace JCC
{
	class CClassInfo
	{
	public:
		CClassInfo(void);
		~CClassInfo(void);
		CClassInfo(const CClassInfo& val);

		CClassInfo& operator=(const CClassInfo& val);

		std::string Name() const { return _name; }
		void Name(std::string val) { _name = val; }

		std::vector<CClassMemberInfo>* MembersInfo() const { return _members_info; }
		void MembersInfo(std::vector<CClassMemberInfo>* val) { _members_info = val; }

	private:
		std::string _name;

		std::vector<CClassMemberInfo>* _members_info;

	};
}
